package com.ag.oa.core.service;

import com.ag.oa.core.entity.vo.MessageVO;
import com.ag.oa.core.entity.vo.UserVO;
import com.alibaba.fastjson.JSONObject;

import java.util.List;
import java.util.Map;

public interface IMessageService {

    void getUserUnreadMessageCount(String openId, JSONObject res);

    List<Map> getUserAllMessagesData(Integer userId, Integer isRead, Integer page, Integer pageSize);

    void saveNewOneMessageRecord(Integer type, Integer fromUserId, List<Integer> toUserIdList
            , Integer taskId, String remark, Integer completeScore);

    Map<String, Object> getMessageInfoById(Integer id);

    void updateHandleMembershipApplyMessage(Integer id, Integer userId, Integer status);

    void getUserTaskForumMessages(Integer taskId, Integer userId, JSONObject res);

    void updateMessageToRead(Integer id);

    /**
     * 负责人，同意完成任务的操作
     */
    Integer updateAgreedCompleteTask(MessageVO vo);

    UserVO getMessageLastUpdateManagerInfo(Integer messageId);

    void updateProjectInvitedData(Integer id, Integer projectId, Integer userId, Integer status);

}
